1. Field of the Invention
The present invention relates to a controller for controlling a machine tool, and more particularly to a position control of a driven element with respect to a machine effecting end in the machine tool.
2. Description of Related Art
In machine tools, to control the position and velocity of a driven element driven by a servomotor, position feedback control and velocity feedback control as well as current feedback control are usually performed so that the position and velocity of the driven element may be in accord with the commanded position and velocity.
Even while such position, velocity and current feedback controls are performed, the driven element is liable to vibrate when the acceleration of the servomotor suddenly changes. To avoid this, a control method has been proposed wherein an acceleration sensor for detecting the acceleration of a driven element is provided, a signal output from the acceleration sensor is subtracted from a current command derived by the velocity feedback control, and the difference obtained is used as a current command for the current feedback control. Specifically, when the driven element vibrates, the vibration component contained in the acceleration signal indicative of the acceleration of the driven element detected by the acceleration sensor constitutes an error with respect to the current command for the current feedback control. Accordingly, the vibration component is subtracted from the current command to remove the error, and using the difference obtained, the driving current for the servomotor is controlled to suppress the vibration (see JP06-91482A).
Also, learning control is adopted when machining a pattern repeated at predetermined intervals, wherein the amount of position deviation is made to converge to the vicinity of zero to enable higher-precision machining (see JP06-309021A and JP04-323706A).
FIG. 6 is a block diagram of a learning controller for performing the conventional learning control. In each position loop processing interval, a position feedback value P1 is subtracted from a position command Pc to obtain a position deviation ε, to which is added a correction value x obtained in the immediately preceding interval of the repeated pattern, and the result is filtered by a band-limiting filter 22a and stored in a delay element memory 22b. The delay element memory 22b includes a memory element for storing the correction value x corresponding to one interval of the repeated pattern and, in each position loop processing interval, outputs the correction value x obtained in the immediately preceding position loop processing interval of the repeated pattern. The output correction value is compensated for a phase lag and gain drop of the controlled system by a dynamic characteristic compensation element 22c and then is added to the position deviation ε. The sum obtained is multiplied by a position gain 21, and the result is output as a velocity command Vc.
Thus, in the learning control, the correction value x stored in the immediately preceding position loop processing interval of the repeated pattern is added to the position deviation ε, and the velocity command Vc obtained based on the thus-corrected position deviation is output to the velocity control section. The learning control is repeatedly executed to make the position deviation ε converge to “0”.
In general, the driven element driven by the servomotor is controlled to move with respect to a machine effecting end at which a tool for effecting machining in contact with a workpiece is fixedly provided in the machine tool, and the relative position, velocity, etc. of the driven element with respect to the machine effecting end is controlled. Thus, with a detector mounted to the driven element, the servomotor for driving the driven element is subjected to position, velocity and current loop controls to control the position and velocity of the driven element, and further the aforementioned learning control is executed to make the position deviation converge to “0”, whereby the driven element can be made to move as commanded.
However, in the case of a machine tool of which the rigidity between the driven element and the machine effecting end is low, the motion of the driven element with respect to the machine effecting end do not always agree with commanded motion. Further, in cases where a machine tool which is required to perform high-speed, high-precision machining is operated at high acceleration, positional displacement between the driven element and the machine effecting end caused due to torsion or the like occasionally becomes so large that it cannot be neglected, even if the machine rigidity is relatively high.
In JP06-91482A, in order to suppress vibration of the driven element, an acceleration sensor is mounted to the driven element, and based on the acceleration detected by the acceleration sensor, the current command is corrected to suppress the vibration. Thus, the disclosed technique is intended to suppress vibration and thereby stabilize machining, and not to make the motion of the driven element with respect to the machine effecting end in accord with the command.